home *** CD-ROM | disk | FTP | other *** search
/ QuickTime 1.0 for Developers / QuickTime 1.0 for Developers.iso / Programming Stuff / Interfaces / Oldstyle C Interfaces / Clock Component.h next >
C/C++ Source or Header  |  1991-09-06  |  2KB  |  65 lines

  1.  
  2. /* Clock Component.h
  3.     Standard calls and values for a clock-component.
  4.  
  5.     by Jim Batson, Peter Hoddie, Bruce Leak, David Van Brink
  6.     Copyright 1990 Apple Computer, Inc. All rights reserved.
  7. */
  8.  
  9. #ifndef _ClockComponent_
  10. #define _ClockComponent_
  11.  
  12. #include "Components.h"
  13. #include "Timebases.h"
  14.  
  15. #define clockComponentType         'clok'
  16. #define systemTickClock         'tick'            /* subtype: 60ths since boot        */
  17. #define systemSecondClock        'seco'            /* subtype: seconds since 1904        */
  18. #define systemMillisecondClock    'mill'            /* subtype: 1000ths since boot        */
  19. #define systemMicrosecondClock    'micr'            /* subtype: 1000000ths since boot    */
  20.  
  21. enum {
  22.     kClockRateIsLinear = 1,
  23.     kClockImplementsCallBacks = 2
  24. };
  25.  
  26. typedef enum
  27.     {
  28.     kClockGetClockTimeSelect = 1,
  29.     kClockSetClockTimeSelect = 2,
  30.     kClockNewCallBackSelect,
  31.     kClockDisposeCallBackSelect,
  32.     kClockCallMeWhenSelect,
  33.     kClockCancelCallBackSelect,
  34.     kClockRateChangedSelect,
  35.     kClockTimeChangedSelect,
  36.     kClockSetTimeBaseSelect
  37.     } ClockComponentSelectors;
  38.  
  39. pascal ComponentResult GetClockTime(ComponentInstance aClock, TimeRecord *out)
  40.         = {0x2f3c,4,kClockGetClockTimeSelect,0x7000,0xa82a};
  41.  
  42. pascal QTCallBack ClockNewCallBack(ComponentInstance aClock, TimeBase tb, short callBackType)
  43.         = {0x2f3c,6,kClockNewCallBackSelect,0x7000,0xa82a};
  44.  
  45. pascal ComponentResult ClockDisposeCallBack(ComponentInstance aClock, QTCallBack cb)
  46.         = {0x2f3c,4,kClockDisposeCallBackSelect,0x7000,0xa82a};
  47.  
  48. pascal ComponentResult ClockCallMeWhen(ComponentInstance clock, QTCallBack cb,
  49.                     long param1, long param2, long param3)
  50.         = {0x2f3c,16,kClockCallMeWhenSelect,0x7000,0xa82a};
  51.  
  52. pascal ComponentResult ClockCancelCallBack(ComponentInstance clock, QTCallBack cb)
  53.         = {0x2f3c,4,kClockCancelCallBackSelect,0x7000,0xa82a};
  54.  
  55. pascal ComponentResult ClockRateChanged(ComponentInstance clock, QTCallBack cb)
  56.         = {0x2f3c,4,kClockRateChangedSelect,0x7000,0xa82a};
  57.  
  58. pascal ComponentResult ClockTimeChanged(ComponentInstance clock, QTCallBack cb)
  59.         = {0x2f3c,4,kClockTimeChangedSelect,0x7000,0xa82a};
  60.  
  61. pascal ComponentResult ClockSetTimeBase(ComponentInstance clock, TimeBase tb)
  62.         = {0x2f3c,4,kClockSetTimeBaseSelect,0x7000,0xa82a};
  63.  
  64. #endif _ClockComponent_
  65.